#!/bin/bash
# 内网服务器镜像部署脚本 (Linux)

echo "🚀 开始部署信访处理系统 (镜像模式)..."

# 检查Docker是否安装
if ! command -v docker &> /dev/null; then
    echo "❌ Docker未安装，请先安装Docker"
    exit 1
fi

if ! command -v docker-compose &> /dev/null; then
    echo "❌ Docker Compose未安装，请先安装Docker Compose"
    exit 1
fi

# 检查镜像是否已加载
if ! docker images | grep -q "xinfang/letter"; then
    echo "❌ Letter镜像未加载，请先运行 ./load_images.sh"
    exit 1
fi

if ! docker images | grep -q "xinfang/net"; then
    echo "❌ Net镜像未加载，请先运行 ./load_images.sh"
    exit 1
fi

# 检查.env文件
if [ ! -f ".env" ]; then
    echo "❌ .env文件不存在，请先创建并配置.env文件"
    exit 1
fi

# 使用当前目录的 compose（镜像版）与根目录 .env
COMPOSE_FILE="docker-compose.images.yml"
ENV_FILE="../.env"

if [ ! -f "$ENV_FILE" ]; then
    echo "❌ 未找到 $ENV_FILE，请在仓库根目录创建 .env（可参考 env.sample）"
    exit 1
fi

# 停止现有服务
echo "🛑 停止现有服务..."
docker-compose -f "$COMPOSE_FILE" --env-file "$ENV_FILE" down

# 启动服务
echo "🚀 启动服务..."
docker-compose -f "$COMPOSE_FILE" --env-file "$ENV_FILE" up -d

# 检查服务状态
echo "📊 检查服务状态..."
sleep 10
docker-compose -f "$COMPOSE_FILE" --env-file "$ENV_FILE" ps

# 显示访问地址
echo ""
echo "✅ 部署完成！"
echo "📱 服务访问地址："
echo "   - Letter服务: http://服务器IP:8106"
echo "   - Net服务: http://服务器IP:9106"
echo ""
echo "📋 管理命令："
echo "   - 查看日志: docker-compose -f $COMPOSE_FILE --env-file $ENV_FILE logs -f"
echo "   - 停止服务: docker-compose -f $COMPOSE_FILE --env-file $ENV_FILE down"
echo "   - 重启服务: docker-compose -f $COMPOSE_FILE --env-file $ENV_FILE restart"
